C++의 무대에서, 모든 객체는 수명을 가지며—그것이 바로 객체 수명입니다. 이는 객체가 메모리 공간을 차지하는 기간을 정의합니다. 함수 본문 내에서, 함수 본문지역 변수의 기본 동작은 지역 변수 자동으로 생성되도록 하는 것입니다. 하지만 우리는 그들의 운명을 바꾸기 위해 자동이렇게 명령할 수 있습니다. 정적 운명을 바꿀 수 있습니다.
1. 자동 객체
기본적으로, 지역 변수는 자동 객체입니다. 이들은 함수 실행이 해당 정의에 도달했을 때 탄생(초기화)하며, 블록이 완료될 때 죽습니다(재획득). 스택에 위치하므로 매 호출마다 새로워집니다. 함수 실행이 정의에 도달하고 블록이 완료될 때 죽습니다(재획득). 스택에 위치하므로 매 호출마다 새로워집니다.
2. 지역 정적 객체
정적 키워드를 사용하면 정적 키워드를 사용하여 지역 정적 객체이들은 오직 한 번만 초기화됩니다—정의를 처음 통과할 때 전에—프로그램 종료 시까지 살아남습니다. 이를 통해 함수가 상태를 '기억'할 수 있지만 전역 범위를 더럽히지 않게 됩니다.
3. 재귀 트랩
재귀 함수에서는 재귀 함수각 재귀 루프 자신의 자동 객체에 대해 고유한 인스턴스를 생성합니다. 재귀가 깊을 경우, 이는 상당한 스택 공간을 소비합니다. 반대로, 정적 객체는 그 재귀의 모든 레벨에서 공유됩니다. 정적 객체는 그 재귀의 모든 레벨에서 공유됩니다.
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>